Debugging Static Analysis

نویسندگان

  • Lisa Nguyen Quang Do
  • Stefan Krüger
  • Patrick Hill
  • Karim Ali
  • Eric Bodden
چکیده

To detect and x bugs and security vulnerabilities, software companies use static analysis as part of the development process. However, static analysis code itself is also prone to bugs. To ensure a consistent level of precision, as analyzed programs grow more complex, a static analysis has to handle more code constructs, frameworks, and libraries that the programs use. While more complex analyses are written and used in production systems every day, the cost of debugging and xing them also increases tremendously. To better understand the di culties of debugging static analyses, we surveyed 115 static analysis writers. From their responses, we extracted the core requirements to build a debugger for static analysis, which revolve around two main issues: (1) abstracting from two code bases at the same time (the analysis code and the analyzed code) and (2) tracking the analysis internal state throughout both code bases. Most current debugging tools that our survey participants use lack the capabilities to address both issues. Focusing on those requirements, we introduce Visuflow, a debugging environment for static dataow analysis that is integrated in the Eclipse development environment. Visuflow features graph visualizations that enable users to view the state of a dataow analysis and its intermediate results at any time. Special breakpoints in Visuflow help users step through the analysis code and the analyzed simultaneously. To evaluate the usefulness of Visuflow, we have conducted a user study on 20 static analysis writers. Using Visuflow helped our sample of analysis writers identify 25% and x 50% more errors in the analysis code compared to using the standard Eclipse debugging environment.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

ective Static Debugging via Componential Set Based Analysis

E ective Static Debugging via Componential Set Based Analysis

متن کامل

A Debugging Scheme for Declarative Equation Based Modeling Languages

This paper concerns the static analysis for debugging purposes of programs written in declarative equation based modeling languages. We first give an introduction to declarative equation based languages and the consequences equation based programming has for debugging. At the same time, we examine the particular debugging problems posed by Modelica, a declarative equation based modeling languag...

متن کامل

A Static Analysis for Program Understanding and Debugging

This paper presents a static pointer analysis technique for a subset of C. The tool supports user-defined assertions inserted in the body of the program. Assertions are of two kinds: static assertions automatically verified by the analyser, and hypothetical assertions treated as assumptions by the analyser. The technique deals with recursive data structures and it is accurate enough to handle c...

متن کامل

Compiler Support for Non-intrusive Monitoring and Debugging

In thi.~ wor·k we apJn·oach the pmblem of rrwnitor·ing and debugging real-time distributed systems by performing static analysis and transformations to eliminate obtr"usion to the monitor·ed system. Our wor·k extends the CRL testbed compiler· rmrl r"tJ.n-tirne er~:oironment to .~npport rrwnitoring anrl logging for· the J!'I171JOM~ of postmortem deb1tgging. The main contrib1ttion of this work is...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1801.04894  شماره 

صفحات  -

تاریخ انتشار 2018